import 'dart:async';

import 'package:video_player/video_player.dart';

class VideoPlayState {
  final VideoPlayerController? controller;
  final bool isLoading;
  final bool isPlaying;
  final bool isFullScreen;
  final double sliderValue;
  final bool showControls;
  final Timer? hideTimer;

  VideoPlayState({this.controller, this.isLoading = true, this.isPlaying = false, this.isFullScreen = false, this.sliderValue = 0.0, this.showControls = true, this.hideTimer});

  VideoPlayState copyWith({VideoPlayerController? controller, bool? isLoading, bool? isPlaying, bool? isFullScreen, double? sliderValue, bool? showControls, Timer? hideTimer}) {
    return VideoPlayState(controller: controller ?? this.controller, isLoading: isLoading ?? this.isLoading, isPlaying: isPlaying ?? this.isPlaying, isFullScreen: isFullScreen ?? this.isFullScreen, sliderValue: sliderValue ?? this.sliderValue, showControls: showControls ?? this.showControls, hideTimer: hideTimer ?? this.hideTimer);
  }
}
